/**
 * Copyright (C) 2022 EEMBC
 * Copyright (C) 2022 Arm Limited
 *
 * All EEMBC Benchmark Software are products of EEMBC and are provided under the
 * terms of the EEMBC Benchmark License Agreements. The EEMBC Benchmark Software
 * are proprietary intellectual properties of EEMBC and its Members and is
 * protected under all applicable laws, including all applicable copyright laws.
 *
 * If you received this EEMBC Benchmark Software without having a currently
 * effective EEMBC Benchmark License Agreement, you must discontinue use.
 */

#include "ee_mfcc_f32.h"

const ee_f32_t ee_mfcc_dct_coefs_f32[EE_NUM_MFCC_DCT_COEFS] = {
    0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,
    0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,
    0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,
    0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,
    0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,
    0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223607f,
    0.223607f,  0.223607f,  0.223607f,  0.223607f,  0.223434f,  0.222057f,
    0.219310f,  0.215212f,  0.209786f,  0.203067f,  0.195096f,  0.185922f,
    0.175602f,  0.164200f,  0.151784f,  0.138434f,  0.124229f,  0.109259f,
    0.093615f,  0.077394f,  0.060696f,  0.043624f,  0.026282f,  0.008779f,
    -0.008779f, -0.026282f, -0.043624f, -0.060696f, -0.077394f, -0.093615f,
    -0.109259f, -0.124229f, -0.138434f, -0.151784f, -0.164200f, -0.175602f,
    -0.185922f, -0.195096f, -0.203067f, -0.209786f, -0.215212f, -0.219310f,
    -0.222057f, -0.223434f, 0.222917f,  0.217429f,  0.206586f,  0.190656f,
    0.170032f,  0.145221f,  0.116834f,  0.085571f,  0.052200f,  0.017544f,
    -0.017544f, -0.052200f, -0.085571f, -0.116834f, -0.145221f, -0.170032f,
    -0.190656f, -0.206586f, -0.217429f, -0.222917f, -0.222917f, -0.217429f,
    -0.206586f, -0.190656f, -0.170032f, -0.145221f, -0.116834f, -0.085571f,
    -0.052200f, -0.017544f, 0.017544f,  0.052200f,  0.085571f,  0.116834f,
    0.145221f,  0.170032f,  0.190656f,  0.206586f,  0.217429f,  0.222917f,
    0.222057f,  0.209786f,  0.185922f,  0.151784f,  0.109259f,  0.060696f,
    0.008779f,  -0.043624f, -0.093615f, -0.138434f, -0.175602f, -0.203067f,
    -0.219310f, -0.223434f, -0.215212f, -0.195096f, -0.164200f, -0.124229f,
    -0.077394f, -0.026282f, 0.026282f,  0.077394f,  0.124229f,  0.164200f,
    0.195096f,  0.215212f,  0.223434f,  0.219310f,  0.203067f,  0.175602f,
    0.138434f,  0.093615f,  0.043624f,  -0.008779f, -0.060696f, -0.109259f,
    -0.151784f, -0.185922f, -0.209786f, -0.222057f, 0.220854f,  0.199235f,
    0.158114f,  0.101515f,  0.034980f,  -0.034980f, -0.101515f, -0.158114f,
    -0.199235f, -0.220854f, -0.220854f, -0.199235f, -0.158114f, -0.101515f,
    -0.034980f, 0.034980f,  0.101515f,  0.158114f,  0.199235f,  0.220854f,
    0.220854f,  0.199235f,  0.158114f,  0.101515f,  0.034980f,  -0.034980f,
    -0.101515f, -0.158114f, -0.199235f, -0.220854f, -0.220854f, -0.199235f,
    -0.158114f, -0.101515f, -0.034980f, 0.034980f,  0.101515f,  0.158114f,
    0.199235f,  0.220854f,  0.219310f,  0.185922f,  0.124229f,  0.043624f,
    -0.043624f, -0.124229f, -0.185922f, -0.219310f, -0.219310f, -0.185922f,
    -0.124229f, -0.043624f, 0.043624f,  0.124229f,  0.185922f,  0.219310f,
    0.219310f,  0.185922f,  0.124229f,  0.043624f,  -0.043624f, -0.124229f,
    -0.185922f, -0.219310f, -0.219310f, -0.185922f, -0.124229f, -0.043624f,
    0.043624f,  0.124229f,  0.185922f,  0.219310f,  0.219310f,  0.185922f,
    0.124229f,  0.043624f,  -0.043624f, -0.124229f, -0.185922f, -0.219310f,
    0.217429f,  0.170032f,  0.085571f,  -0.017544f, -0.116834f, -0.190656f,
    -0.222917f, -0.206586f, -0.145221f, -0.052200f, 0.052200f,  0.145221f,
    0.206586f,  0.222917f,  0.190656f,  0.116834f,  0.017544f,  -0.085571f,
    -0.170032f, -0.217429f, -0.217429f, -0.170032f, -0.085571f, 0.017544f,
    0.116834f,  0.190656f,  0.222917f,  0.206586f,  0.145221f,  0.052200f,
    -0.052200f, -0.145221f, -0.206586f, -0.222917f, -0.190656f, -0.116834f,
    -0.017544f, 0.085571f,  0.170032f,  0.217429f,  0.215212f,  0.151784f,
    0.043624f,  -0.077394f, -0.175602f, -0.222057f, -0.203067f, -0.124229f,
    -0.008779f, 0.109259f,  0.195096f,  0.223434f,  0.185922f,  0.093615f,
    -0.026282f, -0.138434f, -0.209786f, -0.219310f, -0.164200f, -0.060696f,
    0.060696f,  0.164200f,  0.219310f,  0.209786f,  0.138434f,  0.026282f,
    -0.093615f, -0.185922f, -0.223434f, -0.195096f, -0.109259f, 0.008779f,
    0.124229f,  0.203067f,  0.222057f,  0.175602f,  0.077394f,  -0.043624f,
    -0.151784f, -0.215212f, 0.212663f,  0.131433f,  0.000000f,  -0.131433f,
    -0.212663f, -0.212663f, -0.131433f, -0.000000f, 0.131433f,  0.212663f,
    0.212663f,  0.131433f,  0.000000f,  -0.131433f, -0.212663f, -0.212663f,
    -0.131433f, -0.000000f, 0.131433f,  0.212663f,  0.212663f,  0.131433f,
    0.000000f,  -0.131433f, -0.212663f, -0.212663f, -0.131433f, -0.000000f,
    0.131433f,  0.212663f,  0.212663f,  0.131433f,  -0.000000f, -0.131433f,
    -0.212663f, -0.212663f, -0.131433f, -0.000000f, 0.131433f,  0.212663f,
    0.209786f,  0.109259f,  -0.043624f, -0.175602f, -0.223434f, -0.164200f,
    -0.026282f, 0.124229f,  0.215212f,  0.203067f,  0.093615f,  -0.060696f,
    -0.185922f, -0.222057f, -0.151784f, -0.008779f, 0.138434f,  0.219310f,
    0.195096f,  0.077394f,  -0.077394f, -0.195096f, -0.219310f, -0.138434f,
    0.008779f,  0.151784f,  0.222057f,  0.185922f,  0.060696f,  -0.093615f,
    -0.203067f, -0.215212f, -0.124229f, 0.026282f,  0.164200f,  0.223434f,
    0.175602f,  0.043624f,  -0.109259f, -0.209786f,
};

const ee_f32_t ee_mfcc_window_coefs_f32[EE_NUM_MFCC_WIN_COEFS] = {
    0.000000f, 0.000024f, 0.000096f, 0.000217f, 0.000385f, 0.000602f, 0.000867f,
    0.001180f, 0.001541f, 0.001950f, 0.002408f, 0.002913f, 0.003466f, 0.004067f,
    0.004715f, 0.005412f, 0.006156f, 0.006948f, 0.007787f, 0.008673f, 0.009607f,
    0.010589f, 0.011617f, 0.012693f, 0.013815f, 0.014984f, 0.016200f, 0.017463f,
    0.018772f, 0.020128f, 0.021530f, 0.022978f, 0.024472f, 0.026012f, 0.027597f,
    0.029228f, 0.030904f, 0.032626f, 0.034393f, 0.036204f, 0.038060f, 0.039961f,
    0.041906f, 0.043895f, 0.045928f, 0.048005f, 0.050126f, 0.052290f, 0.054497f,
    0.056747f, 0.059039f, 0.061375f, 0.063752f, 0.066171f, 0.068633f, 0.071136f,
    0.073680f, 0.076265f, 0.078891f, 0.081558f, 0.084265f, 0.087012f, 0.089799f,
    0.092626f, 0.095492f, 0.098396f, 0.101340f, 0.104322f, 0.107342f, 0.110399f,
    0.113495f, 0.116627f, 0.119797f, 0.123003f, 0.126246f, 0.129524f, 0.132839f,
    0.136188f, 0.139573f, 0.142993f, 0.146447f, 0.149935f, 0.153456f, 0.157011f,
    0.160600f, 0.164221f, 0.167874f, 0.171559f, 0.175276f, 0.179024f, 0.182803f,
    0.186613f, 0.190453f, 0.194323f, 0.198222f, 0.202150f, 0.206107f, 0.210093f,
    0.214106f, 0.218147f, 0.222215f, 0.226310f, 0.230431f, 0.234578f, 0.238751f,
    0.242949f, 0.247171f, 0.251418f, 0.255689f, 0.259984f, 0.264302f, 0.268642f,
    0.273005f, 0.277389f, 0.281795f, 0.286222f, 0.290670f, 0.295138f, 0.299626f,
    0.304132f, 0.308658f, 0.313203f, 0.317765f, 0.322345f, 0.326941f, 0.331555f,
    0.336185f, 0.340831f, 0.345491f, 0.350167f, 0.354858f, 0.359562f, 0.364280f,
    0.369011f, 0.373754f, 0.378510f, 0.383277f, 0.388056f, 0.392845f, 0.397645f,
    0.402455f, 0.407274f, 0.412102f, 0.416938f, 0.421783f, 0.426635f, 0.431494f,
    0.436359f, 0.441231f, 0.446109f, 0.450991f, 0.455879f, 0.460770f, 0.465666f,
    0.470565f, 0.475466f, 0.480370f, 0.485276f, 0.490183f, 0.495091f, 0.500000f,
    0.504909f, 0.509817f, 0.514724f, 0.519630f, 0.524534f, 0.529435f, 0.534334f,
    0.539230f, 0.544121f, 0.549009f, 0.553891f, 0.558769f, 0.563640f, 0.568506f,
    0.573365f, 0.578217f, 0.583062f, 0.587898f, 0.592726f, 0.597545f, 0.602355f,
    0.607155f, 0.611944f, 0.616723f, 0.621490f, 0.626246f, 0.630989f, 0.635720f,
    0.640438f, 0.645142f, 0.649833f, 0.654508f, 0.659169f, 0.663815f, 0.668445f,
    0.673059f, 0.677655f, 0.682235f, 0.686797f, 0.691342f, 0.695867f, 0.700374f,
    0.704862f, 0.709330f, 0.713778f, 0.718205f, 0.722611f, 0.726995f, 0.731358f,
    0.735698f, 0.740016f, 0.744311f, 0.748582f, 0.752829f, 0.757051f, 0.761249f,
    0.765422f, 0.769569f, 0.773690f, 0.777785f, 0.781853f, 0.785894f, 0.789907f,
    0.793893f, 0.797850f, 0.801778f, 0.805677f, 0.809547f, 0.813387f, 0.817197f,
    0.820976f, 0.824724f, 0.828441f, 0.832126f, 0.835779f, 0.839400f, 0.842989f,
    0.846544f, 0.850065f, 0.853553f, 0.857007f, 0.860427f, 0.863812f, 0.867161f,
    0.870476f, 0.873754f, 0.876997f, 0.880203f, 0.883373f, 0.886505f, 0.889601f,
    0.892658f, 0.895678f, 0.898660f, 0.901604f, 0.904508f, 0.907374f, 0.910201f,
    0.912988f, 0.915735f, 0.918442f, 0.921109f, 0.923735f, 0.926320f, 0.928864f,
    0.931367f, 0.933829f, 0.936248f, 0.938625f, 0.940961f, 0.943253f, 0.945503f,
    0.947710f, 0.949874f, 0.951995f, 0.954072f, 0.956105f, 0.958094f, 0.960039f,
    0.961940f, 0.963796f, 0.965607f, 0.967374f, 0.969096f, 0.970772f, 0.972403f,
    0.973988f, 0.975528f, 0.977022f, 0.978470f, 0.979872f, 0.981228f, 0.982537f,
    0.983800f, 0.985016f, 0.986185f, 0.987307f, 0.988383f, 0.989411f, 0.990393f,
    0.991327f, 0.992213f, 0.993052f, 0.993844f, 0.994588f, 0.995285f, 0.995933f,
    0.996534f, 0.997087f, 0.997592f, 0.998049f, 0.998459f, 0.998820f, 0.999133f,
    0.999398f, 0.999615f, 0.999783f, 0.999904f, 0.999976f, 1.000000f, 0.999976f,
    0.999904f, 0.999783f, 0.999615f, 0.999398f, 0.999133f, 0.998820f, 0.998459f,
    0.998049f, 0.997592f, 0.997087f, 0.996534f, 0.995933f, 0.995285f, 0.994588f,
    0.993844f, 0.993052f, 0.992213f, 0.991327f, 0.990393f, 0.989411f, 0.988383f,
    0.987307f, 0.986185f, 0.985016f, 0.983800f, 0.982537f, 0.981228f, 0.979872f,
    0.978470f, 0.977022f, 0.975528f, 0.973988f, 0.972403f, 0.970772f, 0.969096f,
    0.967374f, 0.965607f, 0.963796f, 0.961940f, 0.960039f, 0.958094f, 0.956105f,
    0.954072f, 0.951995f, 0.949874f, 0.947710f, 0.945503f, 0.943253f, 0.940961f,
    0.938625f, 0.936248f, 0.933829f, 0.931367f, 0.928864f, 0.926320f, 0.923735f,
    0.921109f, 0.918442f, 0.915735f, 0.912988f, 0.910201f, 0.907374f, 0.904508f,
    0.901604f, 0.898660f, 0.895678f, 0.892658f, 0.889601f, 0.886505f, 0.883373f,
    0.880203f, 0.876997f, 0.873754f, 0.870476f, 0.867161f, 0.863812f, 0.860427f,
    0.857007f, 0.853553f, 0.850065f, 0.846544f, 0.842989f, 0.839400f, 0.835779f,
    0.832126f, 0.828441f, 0.824724f, 0.820976f, 0.817197f, 0.813387f, 0.809547f,
    0.805677f, 0.801778f, 0.797850f, 0.793893f, 0.789907f, 0.785894f, 0.781853f,
    0.777785f, 0.773690f, 0.769569f, 0.765422f, 0.761249f, 0.757051f, 0.752829f,
    0.748582f, 0.744311f, 0.740016f, 0.735698f, 0.731358f, 0.726995f, 0.722611f,
    0.718205f, 0.713778f, 0.709330f, 0.704862f, 0.700374f, 0.695867f, 0.691342f,
    0.686797f, 0.682235f, 0.677655f, 0.673059f, 0.668445f, 0.663815f, 0.659169f,
    0.654508f, 0.649833f, 0.645142f, 0.640438f, 0.635720f, 0.630989f, 0.626246f,
    0.621490f, 0.616723f, 0.611944f, 0.607155f, 0.602355f, 0.597545f, 0.592726f,
    0.587898f, 0.583062f, 0.578217f, 0.573365f, 0.568506f, 0.563640f, 0.558769f,
    0.553891f, 0.549009f, 0.544121f, 0.539230f, 0.534334f, 0.529435f, 0.524534f,
    0.519630f, 0.514724f, 0.509817f, 0.504909f, 0.500000f, 0.495091f, 0.490183f,
    0.485276f, 0.480370f, 0.475466f, 0.470565f, 0.465666f, 0.460770f, 0.455879f,
    0.450991f, 0.446109f, 0.441231f, 0.436359f, 0.431494f, 0.426635f, 0.421783f,
    0.416938f, 0.412102f, 0.407274f, 0.402455f, 0.397645f, 0.392845f, 0.388056f,
    0.383277f, 0.378510f, 0.373754f, 0.369011f, 0.364280f, 0.359562f, 0.354858f,
    0.350167f, 0.345491f, 0.340831f, 0.336185f, 0.331555f, 0.326941f, 0.322345f,
    0.317765f, 0.313203f, 0.308658f, 0.304132f, 0.299626f, 0.295138f, 0.290670f,
    0.286222f, 0.281795f, 0.277389f, 0.273005f, 0.268642f, 0.264302f, 0.259984f,
    0.255689f, 0.251418f, 0.247171f, 0.242949f, 0.238751f, 0.234578f, 0.230431f,
    0.226310f, 0.222215f, 0.218147f, 0.214106f, 0.210093f, 0.206107f, 0.202150f,
    0.198222f, 0.194323f, 0.190453f, 0.186613f, 0.182803f, 0.179024f, 0.175276f,
    0.171559f, 0.167874f, 0.164221f, 0.160600f, 0.157011f, 0.153456f, 0.149935f,
    0.146447f, 0.142993f, 0.139573f, 0.136188f, 0.132839f, 0.129524f, 0.126246f,
    0.123003f, 0.119797f, 0.116627f, 0.113495f, 0.110399f, 0.107342f, 0.104322f,
    0.101340f, 0.098396f, 0.095492f, 0.092626f, 0.089799f, 0.087012f, 0.084265f,
    0.081558f, 0.078891f, 0.076265f, 0.073680f, 0.071136f, 0.068633f, 0.066171f,
    0.063752f, 0.061375f, 0.059039f, 0.056747f, 0.054497f, 0.052290f, 0.050126f,
    0.048005f, 0.045928f, 0.043895f, 0.041906f, 0.039961f, 0.038060f, 0.036204f,
    0.034393f, 0.032626f, 0.030904f, 0.029228f, 0.027597f, 0.026012f, 0.024472f,
    0.022978f, 0.021530f, 0.020128f, 0.018772f, 0.017463f, 0.016200f, 0.014984f,
    0.013815f, 0.012693f, 0.011617f, 0.010589f, 0.009607f, 0.008673f, 0.007787f,
    0.006948f, 0.006156f, 0.005412f, 0.004715f, 0.004067f, 0.003466f, 0.002913f,
    0.002408f, 0.001950f, 0.001541f, 0.001180f, 0.000867f, 0.000602f, 0.000385f,
    0.000217f, 0.000096f, 0.000024f,
};

const uint32_t ee_mfcc_filter_pos[EE_NUM_MFCC_FILTER_CONFIG] = {
    2,   4,   6,   9,   11,  14,  16,  19,  22,  25,  29,  32,  35,  39,
    43,  47,  52,  56,  61,  66,  71,  76,  82,  88,  94,  100, 107, 114,
    122, 129, 138, 146, 155, 164, 174, 184, 195, 206, 218, 230,
};
const uint32_t ee_mfcc_filter_len[EE_NUM_MFCC_FILTER_CONFIG] = {
    4,  5,  5,  5,  5,  5,  6,  6,  7,  7,  6,  7,  8,  8,
    9,  9,  9,  10, 10, 10, 11, 12, 12, 12, 13, 14, 15, 15,
    16, 17, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
};

const ee_f32_t ee_mfcc_filter_coefs_f32[EE_NUM_MFCC_FILTER_COEFS] = {
    0.338832f, 0.800884f, 0.746631f, 0.303325f, 0.253369f, 0.696675f, 0.868833f,
    0.442811f, 0.024935f, 0.131167f, 0.557189f, 0.975065f, 0.614900f, 0.212417f,
    0.385100f, 0.787583f, 0.817212f, 0.429027f, 0.047617f, 0.182788f, 0.570973f,
    0.952383f, 0.672750f, 0.304204f, 0.327250f, 0.695796f, 0.941771f, 0.585250f,
    0.234452f, 0.058229f, 0.414750f, 0.765548f, 0.889196f, 0.549310f, 0.214629f,
    0.110804f, 0.450690f, 0.785371f, 0.884997f, 0.560262f, 0.240282f, 0.115003f,
    0.439738f, 0.759718f, 0.924920f, 0.614043f, 0.307527f, 0.005251f, 0.075080f,
    0.385957f, 0.692473f, 0.994749f, 0.707099f, 0.412959f, 0.122726f, 0.292901f,
    0.587041f, 0.877274f, 0.836297f, 0.553573f, 0.274460f, 0.163703f, 0.446427f,
    0.725540f, 0.998867f, 0.726706f, 0.457893f, 0.192346f, 0.001133f, 0.273294f,
    0.542107f, 0.807654f, 0.929987f, 0.670741f, 0.414534f, 0.161295f, 0.070013f,
    0.329259f, 0.585467f, 0.838705f, 0.910957f, 0.663455f, 0.418724f, 0.176704f,
    0.089043f, 0.336545f, 0.581276f, 0.823296f, 0.937334f, 0.700558f, 0.466319f,
    0.234565f, 0.005242f, 0.062666f, 0.299442f, 0.533681f, 0.765435f, 0.994758f,
    0.778301f, 0.553692f, 0.331369f, 0.111284f, 0.221699f, 0.446308f, 0.668631f,
    0.888716f, 0.893393f, 0.677654f, 0.464023f, 0.252461f, 0.042927f, 0.106607f,
    0.322346f, 0.535977f, 0.747539f, 0.957073f, 0.835383f, 0.629791f, 0.426115f,
    0.224320f, 0.024372f, 0.164617f, 0.370209f, 0.573885f, 0.775680f, 0.975628f,
    0.826236f, 0.629880f, 0.435273f, 0.242384f, 0.051182f, 0.173764f, 0.370120f,
    0.564727f, 0.757616f, 0.948818f, 0.861638f, 0.673724f, 0.487413f, 0.302676f,
    0.119488f, 0.138362f, 0.326276f, 0.512587f, 0.697324f, 0.880512f, 0.937822f,
    0.757654f, 0.578960f, 0.401714f, 0.225895f, 0.051479f, 0.062178f, 0.242346f,
    0.421040f, 0.598286f, 0.774105f, 0.948521f, 0.878443f, 0.706767f, 0.536430f,
    0.367409f, 0.199686f, 0.033240f, 0.121557f, 0.293233f, 0.463570f, 0.632591f,
    0.800314f, 0.966760f, 0.868052f, 0.704104f, 0.541376f, 0.379851f, 0.219511f,
    0.060339f, 0.131948f, 0.295896f, 0.458624f, 0.620149f, 0.780489f, 0.939661f,
    0.902318f, 0.745431f, 0.589662f, 0.434996f, 0.281417f, 0.128909f, 0.097682f,
    0.254569f, 0.410338f, 0.565004f, 0.718583f, 0.871090f, 0.977459f, 0.827051f,
    0.677670f, 0.529304f, 0.381939f, 0.235560f, 0.090156f, 0.022541f, 0.172949f,
    0.322330f, 0.470696f, 0.618061f, 0.764440f, 0.909844f, 0.945712f, 0.802217f,
    0.659658f, 0.518023f, 0.377299f, 0.237477f, 0.098543f, 0.054288f, 0.197783f,
    0.340342f, 0.481977f, 0.622701f, 0.762523f, 0.901457f, 0.960486f, 0.823297f,
    0.686963f, 0.551474f, 0.416821f, 0.282991f, 0.149977f, 0.017767f, 0.039514f,
    0.176703f, 0.313037f, 0.448526f, 0.583179f, 0.717009f, 0.850023f, 0.982233f,
    0.886352f, 0.755723f, 0.625869f, 0.496783f, 0.368455f, 0.240876f, 0.114037f,
    0.113648f, 0.244277f, 0.374131f, 0.503217f, 0.631545f, 0.759124f, 0.885963f,
    0.987930f, 0.862547f, 0.737879f, 0.613918f, 0.490657f, 0.368086f, 0.246200f,
    0.124989f, 0.004447f, 0.012070f, 0.137453f, 0.262121f, 0.386082f, 0.509343f,
    0.631914f, 0.753800f, 0.875011f, 0.995553f, 0.884566f, 0.765339f, 0.646759f,
    0.528819f, 0.411512f, 0.294831f, 0.178770f, 0.063322f, 0.115434f, 0.234661f,
    0.353241f, 0.471181f, 0.588488f, 0.705169f, 0.821230f, 0.936678f, 0.948481f,
    0.834240f, 0.720594f, 0.607535f, 0.495058f, 0.383157f, 0.271825f, 0.161059f,
    0.050851f, 0.051519f, 0.165760f, 0.279406f, 0.392465f, 0.504942f, 0.616843f,
    0.728175f, 0.838941f, 0.949149f, 0.941195f, 0.832088f, 0.723522f, 0.615493f,
    0.507995f, 0.401024f, 0.294573f, 0.188639f, 0.083215f, 0.058805f, 0.167912f,
    0.276478f, 0.384507f, 0.492005f, 0.598976f, 0.705427f, 0.811361f, 0.916785f,
    0.978298f, 0.873882f, 0.769962f, 0.666535f, 0.563594f, 0.461136f, 0.359156f,
    0.257650f, 0.156613f, 0.056042f, 0.021702f, 0.126118f, 0.230038f, 0.333465f,
    0.436406f, 0.538864f, 0.640844f, 0.742350f, 0.843387f, 0.943958f, 0.955930f,
    0.856276f, 0.757073f, 0.658319f, 0.560009f, 0.462140f, 0.364707f, 0.267706f,
    0.171134f, 0.074987f, 0.044070f, 0.143724f, 0.242927f, 0.341681f, 0.439991f,
    0.537860f, 0.635293f, 0.732294f, 0.828866f, 0.925013f, 0.979260f, 0.883952f,
    0.789057f, 0.694573f, 0.600495f, 0.506820f, 0.413545f, 0.320667f, 0.228182f,
    0.136086f, 0.044377f, 0.020740f, 0.116048f, 0.210943f, 0.305428f, 0.399505f,
    0.493180f, 0.586455f, 0.679333f, 0.771818f, 0.863914f, 0.955623f, 0.953052f,
    0.862106f, 0.771537f, 0.681342f, 0.591517f, 0.502061f, 0.412969f, 0.324238f,
    0.235867f, 0.147851f, 0.060189f, 0.046949f, 0.137894f, 0.228463f, 0.318658f,
    0.408483f, 0.497939f, 0.587031f, 0.675762f, 0.764133f, 0.852149f, 0.939811f,
    0.972877f, 0.885912f, 0.799292f, 0.713013f, 0.627075f, 0.541472f, 0.456204f,
    0.371267f, 0.286659f, 0.202377f, 0.118419f, 0.034783f, 0.027123f, 0.114088f,
    0.200708f, 0.286987f, 0.372925f, 0.458528f, 0.543796f, 0.628733f, 0.713341f,
    0.797623f, 0.881581f, 0.965217f, 0.951465f, 0.868463f, 0.785776f, 0.703400f,
    0.621334f, 0.539575f, 0.458120f, 0.376968f, 0.296116f, 0.215562f, 0.135304f,
    0.055340f, 0.048535f, 0.131537f, 0.214224f, 0.296600f, 0.378666f, 0.460425f,
    0.541880f, 0.623032f, 0.703884f, 0.784438f, 0.864696f, 0.944660f, 0.975667f,
    0.896284f, 0.817188f, 0.738377f, 0.659849f, 0.581603f, 0.503635f, 0.425945f,
    0.348530f, 0.271388f, 0.194518f, 0.117917f, 0.041583f, 0.024333f, 0.103716f,
    0.182812f, 0.261623f, 0.340151f, 0.418397f, 0.496365f, 0.574055f, 0.651470f,
    0.728612f, 0.805482f, 0.882083f, 0.958417f, 0.965516f, 0.889712f, 0.814170f,
    0.738888f, 0.663865f, 0.589099f, 0.514587f, 0.440329f, 0.366322f, 0.292564f,
    0.219055f, 0.145793f, 0.072775f,
};
